From 771d76a86d89bb614a178adcfb66f3869d5dca0f Mon Sep 17 00:00:00 2001 From: "awilliam@xenbuild.aw" Date: Wed, 31 May 2006 11:29:50 -0600 Subject: [PATCH] [IA64] remaining warnings removed Warnings cleanup. -Werror added when no_warns=y Signed-off-by: Tristan Gingold --- xen/arch/ia64/Rules.mk | 2 +- xen/arch/ia64/linux-xen/iosapic.c | 2 ++ xen/arch/ia64/linux-xen/sal.c | 5 +++++ xen/arch/ia64/linux-xen/smp.c | 2 ++ xen/arch/ia64/linux-xen/smpboot.c | 4 ++++ xen/arch/ia64/linux-xen/time.c | 8 ++++++++ xen/arch/ia64/vmx/pal_emul.c | 4 ++++ xen/arch/ia64/vmx/vmmu.c | 3 +++ xen/arch/ia64/vmx/vmx_ivt.S | 2 ++ xen/arch/ia64/xen/irq.c | 3 +-- xen/arch/ia64/xen/process.c | 11 +++++------ xen/arch/ia64/xen/vcpu.c | 1 + xen/arch/ia64/xen/xentime.c | 6 ++---- xen/include/asm-ia64/linux-xen/linux/interrupt.h | 4 ++++ 14 files changed, 44 insertions(+), 13 deletions(-) diff --git a/xen/arch/ia64/Rules.mk b/xen/arch/ia64/Rules.mk index 55cbeacaaa..e6ae9a50a9 100644 --- a/xen/arch/ia64/Rules.mk +++ b/xen/arch/ia64/Rules.mk @@ -40,7 +40,7 @@ ifeq ($(xen_ia64_dom0_virtual_physical),y) CFLAGS += -DCONFIG_XEN_IA64_DOM0_VP endif ifeq ($(no_warns),y) -CFLAGS += -Wa,--fatal-warnings +CFLAGS += -Wa,--fatal-warnings -Werror -Wno-uninitialized endif LDFLAGS := -g diff --git a/xen/arch/ia64/linux-xen/iosapic.c b/xen/arch/ia64/linux-xen/iosapic.c index e5639ffe7f..7c34876caf 100644 --- a/xen/arch/ia64/linux-xen/iosapic.c +++ b/xen/arch/ia64/linux-xen/iosapic.c @@ -1112,12 +1112,14 @@ map_iosapic_to_node(unsigned int gsi_base, int node) } #endif +#ifndef XEN static int __init iosapic_enable_kmalloc (void) { iosapic_kmalloc_ok = 1; return 0; } core_initcall (iosapic_enable_kmalloc); +#endif #ifdef XEN /* nop for now */ diff --git a/xen/arch/ia64/linux-xen/sal.c b/xen/arch/ia64/linux-xen/sal.c index 475435d374..ad81a29ad8 100644 --- a/xen/arch/ia64/linux-xen/sal.c +++ b/xen/arch/ia64/linux-xen/sal.c @@ -229,7 +229,12 @@ ia64_sal_init (struct ia64_sal_systab *systab) return; } +#ifdef XEN /* warning cleanup */ + if (strncmp((char *)systab->signature, "SST_", 4) != 0) +#else if (strncmp(systab->signature, "SST_", 4) != 0) +#endif + printk(KERN_ERR "bad signature in system table!"); check_versions(systab); diff --git a/xen/arch/ia64/linux-xen/smp.c b/xen/arch/ia64/linux-xen/smp.c index 3b7da3f08d..760349abf0 100644 --- a/xen/arch/ia64/linux-xen/smp.c +++ b/xen/arch/ia64/linux-xen/smp.c @@ -196,7 +196,9 @@ handle_IPI (int irq, void *dev_id, struct pt_regs *regs) mb(); /* Order data access and bit testing. */ } put_cpu(); +#ifndef XEN return IRQ_HANDLED; +#endif } /* diff --git a/xen/arch/ia64/linux-xen/smpboot.c b/xen/arch/ia64/linux-xen/smpboot.c index 0b4f1d0f54..cfb96987cc 100644 --- a/xen/arch/ia64/linux-xen/smpboot.c +++ b/xen/arch/ia64/linux-xen/smpboot.c @@ -197,7 +197,11 @@ sync_master (void *arg) * negative that it is behind. */ static inline long +#ifdef XEN /* warning cleanup */ +get_delta (unsigned long *rt, unsigned long *master) +#else get_delta (long *rt, long *master) +#endif { unsigned long best_t0 = 0, best_t1 = ~0UL, best_tm = 0; unsigned long tcenter, t0, t1, tm; diff --git a/xen/arch/ia64/linux-xen/time.c b/xen/arch/ia64/linux-xen/time.c index 03a1c6b917..6ca173e06a 100644 --- a/xen/arch/ia64/linux-xen/time.c +++ b/xen/arch/ia64/linux-xen/time.c @@ -158,7 +158,11 @@ ia64_init_itm (void) { unsigned long platform_base_freq, itc_freq; struct pal_freq_ratio itc_ratio, proc_ratio; +#ifdef XEN /* warning cleanup */ + unsigned long status, platform_base_drift, itc_drift; +#else long status, platform_base_drift, itc_drift; +#endif /* * According to SAL v2.6, we need to use a SAL call to determine the platform base @@ -197,7 +201,11 @@ ia64_init_itm (void) itc_freq = (platform_base_freq*itc_ratio.num)/itc_ratio.den; local_cpu_data->itm_delta = (itc_freq + HZ/2) / HZ; +#ifdef XEN /* warning cleanup */ + printk(KERN_DEBUG "CPU %d: base freq=%lu.%03luMHz, ITC ratio=%u/%u, " +#else printk(KERN_DEBUG "CPU %d: base freq=%lu.%03luMHz, ITC ratio=%lu/%lu, " +#endif "ITC freq=%lu.%03luMHz", smp_processor_id(), platform_base_freq / 1000000, (platform_base_freq / 1000) % 1000, itc_ratio.num, itc_ratio.den, itc_freq / 1000000, (itc_freq / 1000) % 1000); diff --git a/xen/arch/ia64/vmx/pal_emul.c b/xen/arch/ia64/vmx/pal_emul.c index a0e173eaba..adcc7d21d4 100644 --- a/xen/arch/ia64/vmx/pal_emul.c +++ b/xen/arch/ia64/vmx/pal_emul.c @@ -204,6 +204,10 @@ pal_debug_info(VCPU *vcpu){ static struct ia64_pal_retval pal_fixed_addr(VCPU *vcpu){ + struct ia64_pal_retval result; + + result.status= -1; //unimplemented + return result; } static struct ia64_pal_retval diff --git a/xen/arch/ia64/vmx/vmmu.c b/xen/arch/ia64/vmx/vmmu.c index a08cc5e712..4470e53efd 100644 --- a/xen/arch/ia64/vmx/vmmu.c +++ b/xen/arch/ia64/vmx/vmmu.c @@ -199,8 +199,11 @@ void machine_tlb_insert(struct vcpu *d, thash_data_t *tlb) mtlb.page_flags = tlb->page_flags & ~PAGE_FLAGS_RV_MASK; mtlb.ppn = get_mfn(d->domain,tlb->ppn); mtlb_ppn=mtlb.ppn; + +#if 0 if (mtlb_ppn == INVALID_MFN) panic_domain(vcpu_regs(d),"Machine tlb insert with invalid mfn number.\n"); +#endif psr = ia64_clear_ic(); if ( cl == ISIDE_TLB ) { diff --git a/xen/arch/ia64/vmx/vmx_ivt.S b/xen/arch/ia64/vmx/vmx_ivt.S index 0bf1ae01ef..c774247657 100644 --- a/xen/arch/ia64/vmx/vmx_ivt.S +++ b/xen/arch/ia64/vmx/vmx_ivt.S @@ -180,6 +180,7 @@ vmx_itlb_loop: st8 [r17] = r27 ;; itc.i r25 + dv_serialize_data mov r17=cr.isr mov r23=r31 mov r22=b0 @@ -253,6 +254,7 @@ vmx_dtlb_loop: st8 [r17] = r27 ;; itc.d r25 + dv_serialize_data mov r17=cr.isr mov r23=r31 mov r22=b0 diff --git a/xen/arch/ia64/xen/irq.c b/xen/arch/ia64/xen/irq.c index a6064f4bc4..5218d0e364 100644 --- a/xen/arch/ia64/xen/irq.c +++ b/xen/arch/ia64/xen/irq.c @@ -619,10 +619,9 @@ void process_soft_irq(void) // this is a temporary hack until real console input is implemented extern void domain_pend_keyboard_interrupt(int irq); -irqreturn_t guest_forward_keyboard_input(int irq, void *nada, struct pt_regs *regs) +void guest_forward_keyboard_input(int irq, void *nada, struct pt_regs *regs) { domain_pend_keyboard_interrupt(irq); - return 0; } void serial_input_init(void) diff --git a/xen/arch/ia64/xen/process.c b/xen/arch/ia64/xen/process.c index 27ecb6af3b..c0441d5eef 100644 --- a/xen/arch/ia64/xen/process.c +++ b/xen/arch/ia64/xen/process.c @@ -407,8 +407,9 @@ void trap_init (void) } static fpswa_ret_t -fp_emulate (int fp_fault, void *bundle, long *ipsr, long *fpsr, long *isr, long *pr, long *ifs, - struct pt_regs *regs) +fp_emulate (int fp_fault, void *bundle, unsigned long *ipsr, + unsigned long *fpsr, unsigned long *isr, unsigned long *pr, + unsigned long *ifs, struct pt_regs *regs) { fp_state_t fp_state; fpswa_ret_t ret; @@ -437,10 +438,8 @@ fp_emulate (int fp_fault, void *bundle, long *ipsr, long *fpsr, long *isr, long * unsigned long *pifs, * void *fp_state); */ - ret = (*fpswa_interface->fpswa)((unsigned long) fp_fault, bundle, - (unsigned long *) ipsr, (unsigned long *) fpsr, - (unsigned long *) isr, (unsigned long *) pr, - (unsigned long *) ifs, &fp_state); + ret = (*fpswa_interface->fpswa)(fp_fault, bundle, + ipsr, fpsr, isr, pr, ifs, &fp_state); return ret; } diff --git a/xen/arch/ia64/xen/vcpu.c b/xen/arch/ia64/xen/vcpu.c index 1c1f54ab19..7d60ee04ce 100644 --- a/xen/arch/ia64/xen/vcpu.c +++ b/xen/arch/ia64/xen/vcpu.c @@ -18,6 +18,7 @@ #include #include #include +#include /* FIXME: where these declarations should be there ? */ extern void getreg(unsigned long regnum, unsigned long *val, int *nat, struct pt_regs *regs); diff --git a/xen/arch/ia64/xen/xentime.c b/xen/arch/ia64/xen/xentime.c index 5d83bf80d0..c997b5ad1e 100644 --- a/xen/arch/ia64/xen/xentime.c +++ b/xen/arch/ia64/xen/xentime.c @@ -105,7 +105,7 @@ void do_settime(unsigned long secs, unsigned long nsecs, u64 system_time_base) return; } -irqreturn_t +void xen_timer_interrupt (int irq, void *dev_id, struct pt_regs *regs) { unsigned long new_itm, old_itc; @@ -134,7 +134,7 @@ xen_timer_interrupt (int irq, void *dev_id, struct pt_regs *regs) new_itm = local_cpu_data->itm_next; if (!VMX_DOMAIN(current) && !time_after(ia64_get_itc(), new_itm)) - return IRQ_HANDLED; + return; while (1) { new_itm += local_cpu_data->itm_delta; @@ -185,8 +185,6 @@ xen_timer_interrupt (int irq, void *dev_id, struct pt_regs *regs) /* double check, in case we got hit by a (slow) PMI: */ } while (time_after_eq(ia64_get_itc(), new_itm)); raise_softirq(TIMER_SOFTIRQ); - - return IRQ_HANDLED; } static struct irqaction xen_timer_irqaction = { diff --git a/xen/include/asm-ia64/linux-xen/linux/interrupt.h b/xen/include/asm-ia64/linux-xen/linux/interrupt.h index 210cea512a..a58afbec08 100644 --- a/xen/include/asm-ia64/linux-xen/linux/interrupt.h +++ b/xen/include/asm-ia64/linux-xen/linux/interrupt.h @@ -27,7 +27,11 @@ * IRQ_HANDLED means that we did have a valid interrupt and handled it. * IRQ_RETVAL(x) selects on the two depending on x being non-zero (for handled) */ +#ifdef XEN +typedef void irqreturn_t; +#else typedef int irqreturn_t; +#endif #define IRQ_NONE (0) #define IRQ_HANDLED (1) -- 2.30.2